package com.j48.entrancegurad.mapper;

import com.j48.entrancegurad.model.P_C;
import com.j48.entrancegurad.model.Power;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;

import java.util.ArrayList;


/**
 * p_c表操作
 */
@Repository
@Mapper
public interface P_CMapper {
    /**
     * 查询所有权限-角色关系
     * @return 权限-角色关系列表
     */
    @Select("select * from `p_c`")
    public ArrayList<P_C> selectAll();

    /**
     * 查询权限-角色关系
     * @param p_c 查询条件
     * @return 查询结果
     */
    @Select("select * from `p_c` where p_c_character_id=#{p_c_character_id} and p_c_status=1")
    public ArrayList<P_C> select(P_C p_c);

    /**
     * 查询权限编号
     * @param p_c 查询条件
     * @return 查询结果
     */
    @Select("select p_c_power_id from `p_c` where p_c_character_id=#{p_c_character_id}")
    public int selectPower(P_C p_c);
    /**
     * 添加权限-角色关系
     * @param p_c 被添加权限-角色关系
     * @return 影响数据库数据条数
     */
    @Insert("insert into `p_c`(p_c_power_id,p_c_character_id,p_c_status) values (#{p_c_power_id},#{p_c_character_id},#{p_c_status})")
    public int insert(P_C p_c);

    /**
     * 更新权限-角色关系
     * @param p_c 更新后的权限-角色关系
     * @return 影响数据库数据条数
     */
    @Update("update `p_c` set p_c_power_id=#{p_c_power_id},p_c_character_id=#{p_c_character_id},p_c_status=#{p_c_status} where p_c_id=#{p_c_id}")
    public int update(P_C p_c);

    /**
     * 删除权限-角色关系
     * @param p_c 被删除权限-角色关系
     * @return 影响数据库数据条数
     */
    @Delete("delete from `p_c` where p_c_id=#{p_c_id}")
    public int delete(P_C p_c);

    /**
     * 删除权限-角色关系
     * @param p_c 被删除权限-角色关系
     * @return 影响数据库数据条数
     */
    @Delete("delete from `p_c` where p_c_character_id=#{p_c_character_id}")
    public int deleteByCharacterid(P_C p_c);
}
